﻿using System;
using System.Collections.Generic;
using SharpSqlAnalyzer.nodes;
using SharpSqlAnalyzer.pp.processor.type.comm;
using SharpSqlAnalyzer.stmt.mssql;

namespace SharpSqlAnalyzer.pp.stmtformatter.type.comm
{
	// Token: 0x02000208 RID: 520
	public class ExecuteStmtFormatter : AbstractStmtFormatter
	{
		// Token: 0x06001214 RID: 4628 RVA: 0x00317D07 File Offset: 0x00315F07
		public virtual void addParaListProcessor(ColumnlistCommaProcessor processor)
		{
			if (this.paraListProcessors == null)
			{
				this.paraListProcessors = new List<AbstractProcessor>();
			}
			this.paraListProcessors.Add(processor);
		}

		// Token: 0x06001215 RID: 4629 RVA: 0x00317D28 File Offset: 0x00315F28
		protected internal override void doFormat(TCustomSqlStatement stmtArg)
		{
			TMssqlExecute tmssqlExecute = stmtArg as TMssqlExecute;
			this.runProcessor<TMssqlExecute>(this.SpecialProcessors, tmssqlExecute);
			this.runProcessor<TExecParameterList>(this.paraListProcessors, tmssqlExecute.Parameters);
		}

		// Token: 0x040013DB RID: 5083
		private IList<AbstractProcessor> paraListProcessors;
	}
}
